﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using EntGuayasSLA.BL.Listas;
using EntGuayasSLA.BL.Listas.Criterias;
using Ext.Net;
using EntGuayasSLA.BL;

namespace EGuayas.Web.Auditoria.admin.Global
{
    public partial class pgAdmGlobal : pgBase
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                if (!X.IsAjaxRequest)
                {
                    var provinciaList = ProvinciaLista.GetProvinciaLista();
                    stoProvincia.DataSource = provinciaList;
                    stoProvincia.DataBind();
                }
            }
            catch (Exception ex)
            {
                RegistrarLog(ex);
            }
        }
        protected void cbbProvincia_Select(object sender, DirectEventArgs e)
        {
            try
            {
                var cantonList = CantonLista.GetCantonLista(e.ExtraParams["Id"]);
                cbbCanton.Reset();
                cbbParroquia.Reset();
                stoParroquia.RemoveAll();
                stoCanton.DataSource = cantonList;
                stoCanton.DataBind();
            }
            catch (Exception ex)
            {
                RegistrarLog(ex);
            }
        }
        protected void cbbCanton_Select(object sender, DirectEventArgs e)
        {
            try
            {
                var parroquiaList = ParroquiaLista.GetParroquiaLista(e.ExtraParams["Id"]);
                cbbParroquia.Reset();
                stoParroquia.DataSource = parroquiaList;
                stoParroquia.DataBind();
            }
            catch (Exception ex)
            {
                RegistrarLog(ex);
            }
        }

        protected void btnBuscarExpedientesLic_Click(object sender, DirectEventArgs e)
        {
            try
            {
                ExpedienteEstadoCriteria criterioBusqueda = ExpedienteEstadoCriteria.NewExpedienteEstadoCriteria();
                criterioBusqueda.ProvinciaId = e.ExtraParams["ProvinciaId"];
                criterioBusqueda.CantonId = e.ExtraParams["CantonId"];
                criterioBusqueda.ParroquiaId = e.ExtraParams["ParroquiaId"];
                criterioBusqueda.Codigo = e.ExtraParams["Codigo"];
                criterioBusqueda.Estado = e.ExtraParams["Estado"];
                criterioBusqueda.FechaDesde = e.ExtraParams["FechaDesde"];
                criterioBusqueda.FechaHasta = e.ExtraParams["FechaHasta"];
                /*
                this.gpnLicencias.GetStore().AutoLoadParams[0].Value= criterioBusqueda.ProvinciaId;
                this.gpnLicencias.GetStore().AutoLoadParams[1].Value= criterioBusqueda.CantonId;
                this.gpnLicencias.GetStore().AutoLoadParams[2].Value= criterioBusqueda.ParroquiaId;
                this.gpnLicencias.GetStore().AutoLoadParams[3].Value= criterioBusqueda.Codigo;
                this.gpnLicencias.GetStore().AutoLoadParams[4].Value= criterioBusqueda.Estado;
                */              
                
                var expedientesLic = ExpedienteAuditoriaLista.GetExpedienteLista(criterioBusqueda);
                stoExpedienteLic.DataSource = expedientesLic;
                stoExpedienteLic.DataBind();
             }
            catch (Exception ex)
            {
                RegistrarLog(ex);
            }
        }
        //Invocado al cerrrar ventana
        /*
        [DirectMethod]
        public void BuscarExpedientes()
        {
            try
            {
                ExpedienteEstadoCriteria criterioBusqueda = ExpedienteEstadoCriteria.NewExpedienteEstadoCriteria();

                criterioBusqueda.ProvinciaId = getValueGridParams("ProvinciaId");
                criterioBusqueda.CantonId = getValueGridParams("CantonId");
                criterioBusqueda.ParroquiaId =getValueGridParams("ParroquiaId");
                criterioBusqueda.Codigo = getValueGridParams("Codigo");
                criterioBusqueda.Estado = getValueGridParams("Estado");

                var expedientesLic = ExpedienteLicenciamientoLista.GetExpedienteLista(criterioBusqueda);
                stoExpedienteLic.DataSource = expedientesLic;
                stoExpedienteLic.DataBind();
            }
            catch (Exception ex)
            {
                RegistrarLog(ex);
            }
        }

        private string  getValueGridParams(string sName)
        {
            var prm    = this.gpnLicencias.GetStore().AutoLoadParams.FirstOrDefault(r => r.Name == sName);
            string val = ( prm != null) ? prm.ValueToString() : "";
            return val;
        }
        */
        /*
        protected void gpnLicencias_Command(object sender, DirectEventArgs e)
        {
            try
            {
                var id = e.ExtraParams["Id"];
           

            }
            catch (Exception ex)
            {
                RegistrarLog(ex);
            }
        }
        */
        
    }
}